#!/bin/bash

# 确保脚本有执行权限
# chmod +x view_kitti_map.sh

# 设置ROS环境
source /root/catkin_ws/devel/setup.bash

# 默认地图文件
DEFAULT_MAP="/root/catkin_ws/src/auto_navigation/maps/latest_kitti_map.pcd"

# 如果提供了参数，使用参数作为地图文件路径
if [ $# -gt 0 ]; then
    MAP_FILE="$1"
else
    # 否则使用默认地图文件
    MAP_FILE="$DEFAULT_MAP"
fi

# 检查地图文件是否存在
if [ ! -f "$MAP_FILE" ]; then
    echo "错误: 地图文件不存在: $MAP_FILE"
    exit 1
fi

echo "正在查看地图文件: $MAP_FILE"

# 启动ROS核心（如果尚未运行）
if ! rostopic list > /dev/null 2>&1; then
    echo "启动ROS核心..."
    roscore &
    sleep 2  # 等待ROS核心启动
fi

# 在后台启动点云发布节点
echo "启动点云发布节点..."
python3 /root/catkin_ws/src/auto_navigation/scripts/view_pcd.py "$MAP_FILE" &
PUB_PID=$!

# 启动RViz进行可视化
echo "启动RViz进行可视化..."
rosrun rviz rviz -d /root/catkin_ws/src/auto_navigation/rviz/view_pcd_file.rviz

# 当RViz关闭时，终止点云发布节点
echo "清理进程..."
kill $PUB_PID

echo "查看完成。" 